package com.wicket.okrbff.biz.service.dto.common;


import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Objects;


/**
 * @desc BffCycleTypeInstanceRelationshipDto
 * @使用场景
 */
@Data
public class BffCycleTypeInstanceRelationshipDto implements Serializable {

    /**
     * 工作周期类型关系ID:
     */
    @ApiModelProperty("工作周期类型关系ID")
    private String cycleRelationshipId;

    /**
     * 1111111工作周期关系类型:
     */
    @ApiModelProperty("1111111工作周期关系类型")
    private String cycleRelationType;

    /**
     * 周期类型标准化:
     */
    @ApiModelProperty("周期类型标准化")
    private String cycleTypeStandard;

    /**
     * 关联父工作周期类型编码:
     */
    @ApiModelProperty("关联父工作周期类型编码")
    private String relationCycleTypeCode;

    /**
     * 子工作周期数量:
     */
    @ApiModelProperty("子工作周期数量")
    private Long subCycleNumber;

    /**
     * 是否中期:
     */
    @ApiModelProperty("是否中期")
    private String isInterim;

    /**
     * 主体生命周期:
     */
    @ApiModelProperty("主体生命周期")
    private String subjectLifeCycle;

    /**
     * 是否存档:
     */
    @ApiModelProperty("是否存档")
    private String isArchive;

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        if (!super.equals(o)) return false;
        BffCycleTypeInstanceRelationshipDto that = (BffCycleTypeInstanceRelationshipDto) o;
        return cycleRelationshipId == that.cycleRelationshipId && cycleRelationType == that.cycleRelationType && cycleTypeStandard == that.cycleTypeStandard && relationCycleTypeCode == that.relationCycleTypeCode && subCycleNumber == that.subCycleNumber && isInterim == that.isInterim && subjectLifeCycle == that.subjectLifeCycle && isArchive == that.isArchive;
    }

    @Override
    public int hashCode() {
        return Objects.hash(super.hashCode(), cycleRelationshipId, cycleRelationType, cycleTypeStandard, relationCycleTypeCode, subCycleNumber, isInterim, subjectLifeCycle, isArchive);
    }

}
